package common.util;

import java.io.*;
import java.net.Socket;

/**
 * Socket工具类：提供发送与接收消息的简化方法
 */
public class SocketUtil {

    /**
     * 向指定Socket发送字符串消息
     * @param socket 目标Socket
     * @param msg 要发送的消息
     * @throws IOException 如果发送失败
     */
    public static void send(Socket socket, String msg) throws IOException {
        // 自动刷新输出流，确保消息立即发送
        PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
        out.println(msg);
    }

    /**
     * 从指定Socket接收一行消息
     * @param socket 源Socket
     * @return 接收到的消息字符串（单行）
     * @throws IOException 如果接收失败
     */
    public static String receive(Socket socket) throws IOException {
        BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
        return in.readLine(); // 读取一行消息
    }
}
